home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-04 / tm480.zip / TMMANUAL.EXE / SCRMAN.MAC < prev    next >
Text File  |  1991-09-10  |  53KB  |  1,777 lines

  1. @vid
  2. @macro B,"@bbmenu white,red"
  3. @macro C,"@colour char,cyan,blue"
  4. @macro D,"@bbmenu cyan,blue"
  5. @macro M,@use 'SCRMAN <F1>=HELP, <PgUp>=previous menu,<PgDn>=next menu <esc>=Main menu'
  6. @macro N
  7. @colour char,white,blue
  8. @win line23,column3,depth1,width1
  9. <>=to validate the field(s), <F1>=to abandon
  10. @colour char,cyan,blue
  11. @ENDM
  12. @macro R
  13. @dim
  14. @colour char,cyan,blue
  15. @BANNER
  16. @endm
  17. @macro W,"@col char,white,blue"
  18. @defaults dim,cyan,blue
  19. @head left,"Taskmaster SCR Manual"
  20. @head right,"Copyright (c) FmP 1991"
  21. @head centre,"General Topics Menu"
  22. @nf MAIN
  23. @dou
  24. @col page,cyan,blue
  25. $R$
  26. @border
  27.                   8
  28. @draw
  29. >C<               0
  30. $D$
  31.   {IN-LINE     }   0
  32.   {COLOURS     }   0
  33.   {FOREGROUND  }   0
  34.   {BACKGROUND  }   0
  35.   {FLASHING    }   0
  36.   {GRAPHICS    }   0
  37.   {SYMBOLS     }   0
  38.   {INSERTING   }   0
  39.   {INVOCATION  }   0
  40.   {FILENAMES   }   0
  41.   {FLAGS       }   0
  42.   {OPTIONS     }   0
  43.               >C< 0
  44.  This on-line man-0
  45.  ual  for  SCR can0
  46.  only  scratch the0
  47.  surface   of  the0
  48.  facilities avail-0
  49.  able.            0
  50.                   0
  51.                   2
  52. @use 'Action: Select and  or <esc> to return to previous menu'
  53. @end
  54. @nf h_frame
  55. @head centre,"Main Menu"
  56. $R$
  57. @dim
  58. @col page,cyan,blue
  59. @border
  60. @end
  61. @nf horizontal
  62. @head centre,Main Menu
  63. $R$
  64. @dim
  65. $C$
  66. @win line2,column1,depth1,width77
  67. $D$
  68. {BROWSE }{OVERVIEW }{GENERAL }{DATA-CAPTURE }{MENUS }{GRAPHICS }{ATTRIBUTES }{QUIT }
  69. @bright
  70. @use 'Action: Select and press  or press <esc> to leave current menu'
  71. @end
  72. @nf GEN
  73. @head centre,General Menu
  74. $R$
  75. @dim
  76. $C$
  77. @win line3,column19,depth19,width12
  78. $B$
  79. @drop
  80. @out white
  81.  
  82.  {ACCEPTFK }
  83.  {BANNER   }
  84.  {BORDER   }
  85.  {DEFAULTS }
  86.  {DF       }
  87.  {END      }
  88.  {HEADING  }
  89.  {NF       }
  90.  {OVERLAY  }
  91.  {REPEAT   }
  92.  {SOFT     }
  93.  {SPACES   }
  94.  {USERLINE }
  95.  {VIDEO    }
  96.  {WINDOW   }
  97. @line
  98.  Keys:  
  99. @end
  100. @nf DAT
  101. @head centre,Data Capture Menu
  102. $R$
  103. @dim
  104. $C$
  105. @win line3,column28,depth16,width12
  106. $B$
  107. @drop
  108. @out white
  109.  
  110.  {ALPHA    }
  111.  {DATE     }
  112.  {FILENAME }
  113.  {LIST     }
  114.  {LOGICAL  }
  115.  {MARKERS  }
  116.  {NUMBER   }
  117.  {PATH     }
  118.  {PRINTER  }
  119.  {RANGE    }
  120.  {STRING   }
  121.  {TIME     }
  122. @line
  123.  Keys: 
  124. @end
  125. @nf MEN
  126. @head centre,Menus Menu
  127. $R$
  128. @dim
  129. $C$
  130. @win line3,column42,depth11,width11
  131. $B$
  132. @drop
  133. @out white
  134.  
  135.  {BBMENU  }
  136.  {BBIMENU }
  137.  {BBHELP  }
  138.  {DROP    }
  139.  {HELP    }
  140.  {KEY     }
  141.  {MENU    }
  142. @line
  143.  Keys:
  144. @end
  145. @nf GRA
  146. @head centre,Graphics Menu
  147. $R$
  148. @dim
  149. $C$
  150. @win line3,column49,depth13,width13
  151. $B$
  152. @drop
  153. @out white
  154.  
  155.  {DOUBLE    }
  156.  {DRAW      }
  157.  {GOFF      }
  158.  {GON       }
  159.  {LINE      }
  160.  {MAP       }
  161.  {OUTLINE   }
  162.  {SINGLE    }
  163.  {TRANSLATE }
  164. @line
  165.  Keys:  
  166. @end
  167.  
  168. @nf ATT
  169. @head centre,Attributes Menu
  170. $R$
  171. @dim
  172. $C$
  173. @win line3,column59,depth8,width10
  174. $B$
  175. @drop
  176. @out white
  177.  
  178.  {BRIGHT }
  179.  {COLOUR }
  180.  {DIM    }
  181.  {SHADOW }
  182. @line
  183.  Keys:
  184. @end
  185. @nf flags
  186. $C$
  187. @dim
  188. @win line2,column20,depth20,width55
  189. Valid command line flags :
  190.  
  191. /I = Ignore @DF commands, i.e. treat as @NF
  192. /P = Pause after errors and warnings
  193. /Q = Suppress all output except Fatal errors
  194. /S = Display source after macro processing
  195.      /I implicit
  196.  
  197. Enter SCR to see an up to date list.
  198. @end
  199. @nf options
  200. $C$
  201. @dim
  202. @win line2,column20,depth20,width55
  203. In the syntax definitions throughout this manual  items 
  204. appearing  in braces for  example  {{OPTIONAL}}  may  be 
  205. omitted.
  206.  
  207. The  keyword  OPTIONAL  may  be  used with  many  field 
  208. directives  and indicates that the user may  leave  the 
  209. field blank.  If characters are  entered however,   the 
  210. field will be validated. 
  211. @end
  212. @nf invocation
  213. $C$
  214. @dim
  215. @win line2,column20,depth20,width55
  216. Running SCR
  217.  
  218. SCR is invoked with a command of the form:
  219.  
  220. SCR {{d:{{path}}}}filename{{.ext}}
  221.  
  222. The  drive  identifier and pathname  are  optional.  An
  223. extension  may  be given but is normally  omitted; this
  224. causes an ordered search for filename.mac, filename.pro
  225. or filename.tsk respectively. No wildcards are allowed.
  226.  
  227. (.pro files are program files used with our PROTEAN 4GL
  228. which behaves like Taskmaster  but supports  a  further
  229. 70 commands for everything from comms. to database.)
  230.  
  231. The  file FMPVT52.DEF must be available either  in  the
  232. current working directory or in an APPENDed  directory.
  233. See MS-DOS APPEND command.
  234. @end
  235. @nf filenames
  236. $C$
  237. @dim
  238. @win line2,column20,depth20,width55
  239. SCR - USE OF FILENAMES
  240.  
  241. When invoked as : SCR filename   , SCR searches for
  242. filename.MAC or filename.TSK respectively.
  243.  
  244. On  finding one of the above, it then searches the file
  245. for an @video  directive. If  and when this is located,
  246. forms  are  processed until  an  end-of-file  character
  247. (^Z)  or an @EOF directive is encountered.  The  output
  248. file is called  filename.ovr.
  249.  
  250. This allows both Taskmaster commands and SCR directives
  251. to be located in a single file with a filetype of TSK.
  252.  
  253. If  the combined file gets unmanageably large  and  has
  254. many  commands  and many SCR source lines it is  normal
  255. to move the forms to a .MAC file to speed editing.
  256.  
  257. The output file (or OVR file as it is normally  called)
  258. is then opened in your task using the FORMS command.
  259. @end
  260.  
  261. @nf IN-LINE
  262. $C$
  263. @dim
  264. @win line2,column20,depth20,width55
  265. In-line control characters
  266.  
  267. Control characters may be interspersed with screen text
  268. to  control certain attributes of screen text within  a
  269. line.
  270.  
  271.      Attributes controlled are :
  272.  
  273.           FOREGROUND COLOUR,
  274.           BACKGROUND COLOUR,
  275.           FLASHING/STEADY,
  276.           GRAPHICS/TEXT mode,
  277.           NORMAL/INTENSIFIED
  278.           POSITIVE/NEGATIVE
  279.  
  280. Certain special characters are also available via  this
  281. mechanism:    ^U= ^D= ^A= ^V= ^W=
  282. @end
  283. @nf COLOURS
  284. $C$
  285. @dim
  286. @win line2,column20,depth20,width55
  287. COLOURS - Use of Control characters.
  288.  
  289. Both  the  foreground  and background  colours  can  be
  290. changed   using   control  characters.   However,   the
  291. background  colour  command  sequence  alone  will  not
  292. result in any colour change.
  293.  
  294. The effect of a background colour sequence is to change
  295. the  value to be used as a background colour next  time
  296. the foreground is changed.
  297. @end
  298. @nf background
  299. $C$
  300. @dim
  301. @win line2,column20,depth20,width55
  302. BACKGROUND COLOUR
  303.  
  304. syntax: ^P and a colour as below:
  305. @bright
  306.  
  307.      ^R  (control R = 12 hex)     R ed            
  308.      ^G  (control G = 07 hex)     G reen   
  309.      ^Y  (control Y = 19 hex)     Y ellow  
  310.      ^B  (control B = 02 hex)     B lue    
  311.      ^A  (control A = 01 hex)     magent A 
  312.      ^C  (control C = 03 hex)     C yan    
  313.      ^W  (control W = 17 hex)     W hite   
  314.      ^K  (control K = 0B hex)      blac K   
  315.  
  316. @col char,cyan,blue
  317. @dim
  318. Note that trailing spaces (spaces at the end of a line)
  319. are  normally  trimmed during processing and  so  don't
  320. appear.  This  action  can be prevented by  use   of  a
  321. terminating ^E.
  322. @end
  323.  
  324. @nf foreground
  325. $C$
  326. @dim
  327. @win line2,column20,depth20,width55
  328. FOREGROUND COLOUR
  329.  
  330. This command is used to specify the foreground and send
  331. a  sequence to the SCREEN. If no background colour  has
  332. been  specified then the default taken from  the  video
  333. definition file in use will prevail.
  334.  
  335. syntax: ^S and a colour as for background ( control S =
  336.         13 hex )
  337. Example
  338. @draw
  339. >1<
  340.   Change foreground to white ^S^Wlike that.
  341.                                           >1<
  342. Is displayed as:
  343. >2<
  344.   Change foreground to white like that.
  345.                                           >2<
  346. @end
  347. @nf graphics
  348. $C$
  349. @dim
  350. @win line2,column20,depth20,width55
  351. GRAPHICS TOGGLE
  352.  
  353. If in graphics mode, by virtue of @GON or this command,
  354. the  video  will be returned to TEXT mode. If  in  text
  355. mode  (by  virtue of @GOFF or this command)  then  this
  356. command will set graphic mode.
  357. syntax: ^X (control X = 18 hex)
  358.  
  359. The  translation  of  numbers  to  shapes  is  easy  to
  360. remember.  Imagine a "Quartered square" like this:
  361. @gon
  362. 7---8---9                                  7---8---9
  363. 0   0   0  All the intersection characters 0   0   0
  364. 4---5---6  can readily be remembered by    4---5---6
  365. 0   0   0  reference to their placement on 0   0   0
  366. 1---2---3  a standard numeric keypad.      1---2---3
  367.  
  368. Additionally minus (-) gets translated into -
  369.           and zero (0) becomes 0
  370. In-line ^Y switches between single/double line mode.
  371.                             -5555-/-5555-
  372. @end
  373. @nf flashing
  374. $C$
  375. @dim
  376. @win line2,column20,depth20,width55
  377. FLASHING TOGGLE
  378.  
  379. This   is  the  only  command  available  to  SCR   for
  380. controlling  FLASHING  of screen data. If  the  current
  381. attribute  is STEADY, receipt of this command will  set
  382. the flashing attribute.
  383.  
  384. If  the current attribute is FLASHING, then the  normal
  385. steady attribute will be restored.
  386.  
  387. syntax: ^F (control F = 06 hex)
  388. @end
  389. @nf inserting
  390. $C$
  391. @dim
  392. @win line2,column20,depth20,width55
  393.    INSERTING CONTROL CHARACTERS INTO THE SOURCE FILE
  394.  
  395. Most wordprocessors have the ability to insert  control
  396. characters into the text file. A typical implementation
  397. uses the control P function as a preamble byte which is
  398. then followed by the required control character.
  399.  
  400. Example for WordStar (tm) users
  401.  
  402.      1.   Position the cursor to required place.
  403.      2.   Check insert mode is on.
  404.      3.   Press <control> and P together.
  405.      4.   Press X
  406.      5.   ^X should appear on the screen. If not, press
  407.           control OD.
  408.  
  409. When  using  the  "control  P"  function  in  WordStar,
  410. certain  control  characters  must  be  avoided,   e.g.
  411. control  and M. These cause undesirable screen  effects
  412. during source file editing.
  413. @end
  414. @nf user_interface
  415. @dim
  416. @col char,black,green
  417. @win line2,column10,depth20,width60
  418. @outline black,double
  419.  
  420.   This  task  is  a very brief insight into SCR,  the  FmP
  421.   Screen Template Processor.
  422.  
  423.   BOUNCE-BAR MENUS
  424.   One  topic is always HIGHLIGHTED  - press  for  more
  425.   information on highlighted topic.  There are a number of
  426.   ways to move the highlight.  Space and  move  highlight
  427.   right  and/or down to next topic.  moves  highlight  up
  428.   and/or  left  to previous topic. <HOME>  highlights  the
  429.   first topic.
  430.  
  431.   The  <>  and <> keys select next  and  previous  menus
  432.   respectively. You may press <esc> to exit from the task.
  433.  
  434.   DATA ENTRY forms
  435.   These  are  included so you may check Taskmaster's  data
  436.   validation mechanisms.  You can exit from these forms by
  437.   pressing any function key.                PRESS ANY KEY 
  438. $C$
  439. @END
  440. @NF symbols
  441. @gon
  442.   SPECIAL SYMBOLS RECOGNISED BY SCR
  443.   7------8--------------------------------8-------------------------9
  444.   0SYMBOL0  MEANING  /  DESCRIPTION       0 DEPENDENCY / NOTES      0
  445.   4------5--------------------------------5-------------------------6
  446.   0  [[   0  Start of an unprotected field 0 Use [[[[ to display [[     0
  447.   0  ]]   0  End of an unprotected field.  0 Use ]]]] to display ]]     0
  448.   4------5--------------------------------5-------------------------6
  449.   0  _   0 {(as [_])} Spaces substitution  0 must follow @SPACES     0
  450.   0      0  as declared by @SPACES.       0 in this or earlier form.0
  451.   0  -   0 {(as [-])} Fills field with     0 Note hyphen must be     0
  452.   0      0  underscores at run-time.      0 used NOT underscore.    0
  453.   0  .   0 {(as [.])} Fills field with     0 See @markers for        0
  454.   0      0  dots at run-time.             0 example of use.         0
  455.   0  !   0 {(as [!  ])} Declares the field 0 Text keyed into this    0
  456.   0      0  as a "password" type field.   0 field  is invisible.    0
  457.   4------5--------------------------------5-------------------------6
  458.   0  {{   0  Start of Text variable.       0 Use {{{{ to display {{     0
  459.   0  }}   0  End of Text variable.         0 Use }}}} to display }}     0
  460.   4------5--------------------------------5-------------------------6
  461.   0{>n<}  0  Corner of a graphics box or   0 Treated as text if no   0
  462.   0      0  graphics line. (if @DRAW has  0 @DRAW preceding.        0
  463.   0      0  been declared for this form)  0                         0
  464.   0{=n=}  0  Double-line graphics box      0 As{>n<.}                 0
  465.   1------2--------------------------------2-------------------------3
  466. @end
  467. @nf m0
  468. @col page,cyan,blue
  469. @head centre,"Browse Menu One"
  470. $R$
  471. @bbmenu cyan,blue
  472. @GON
  473. 7----------8-------------------------------------8-------------------------9
  474. 0DIRECTIVE 0  DATA TYPE / DESCRIPTION            0 KEYWORDS                0
  475. 4----------5-------------------------------------5-------------------------6
  476. 0{ALPHA    }0  A string of text that must only    0 UPPER,CONVERT           0
  477. 0          0  contain alphabetic characters      0                         0
  478. 4----------5-------------------------------------5-------------------------6
  479. 0{ACCEPTFK }0  Determines active function keys    0 NONE, F1-F12            0
  480. 4----------5-------------------------------------5-------------------------6
  481. 0{BANNER   }0  This line is replaced by heading   0                         0
  482. 0          0  as set-up by @HEAD commands        0                         0
  483. 4----------5-------------------------------------5-------------------------6
  484. 0{BBMENU   }0  Designates the template as         0 BLUE,RED,GREEN,CYAN     0
  485. 0          0  containing a "Bounce-Bar Menu"     0 YELLOW,MAGENTA,WHITE    0
  486. 0          0                                     0 BLACK                   0
  487. 4----------5-------------------------------------5-------------------------6
  488. 0{BBIMENU  }0  As BBMENU except user need not     0                         0
  489. 0          0  press  if using 1st char.      0                         0
  490. 4----------5-------------------------------------5-------------------------6
  491. 0{BORDER   }0  Encloses screen in rectangle       0 Foreground colour       0
  492. 4----------5-------------------------------------5-------------------------6
  493. 0{BRIGHT   }0  Sets full intensity mode.          0                         0
  494. 1----------2-------------------------------------2-------------------------3
  495. @goff
  496. $W$
  497. @use 'SCRMAN <F1>=HELP, <PgDn>=next menu <esc>=Main menu'
  498. @end
  499. @head left,"SCR Directives"
  500. @nf alpha
  501. @col page,cyan,blue
  502. @head centre,@ALPHA
  503. $R$
  504. @border
  505. @ALPHA min 3,upper
  506.  
  507.      This directive is similar to the @STRING  directive,  except
  508.      that  the  field  it describes may only  contain  alphabetic
  509.      characters.
  510.  
  511.      @ALPHA  {{MIN nn}} {{,UPPER}}
  512.                       {{,CONVERT}}
  513.      Example:
  514. @draw
  515.      >1<
  516.        @ALPHA min 3,upper
  517.        Please enter ID code{[        ]}
  518.        Minimun 3 ALPHABETIC chars (Capitals only)
  519.                                                 >1<
  520.      Will display like:
  521.      >2<
  522.        Please enter ID code [        ]
  523.        Minimun 3 ALPHABETIC chars (Capitals only)
  524.                                                 >2<
  525. $N$
  526. @end
  527. @nf acceptfk
  528. @head centre,@ACCEPTFK
  529. $R$
  530. @border
  531.  
  532.      By  default, when Taskmaster displays a form containing one  or  more
  533.      fields  the user can opt to press a Function Key or <esc>  instead  of 
  534.      filling  in  the field(s).  The task can take  appropriate  action  by 
  535.      examining  the  ANYFK  and  FUNKEY  system  variables.  The   ACCEPTFK  
  536.      directive enables you to limit which keys are active thus  simplifying 
  537.      the Taskmaster code and improving the user interface.
  538.  
  539.      @ACCEPTFK  {{NONE}}{{f1-f12}}{{ESC}}
  540.  
  541.      Example:
  542. @draw
  543.      >1<
  544.        @str min3
  545.        @ACCEPTFK f2,esc
  546.        Please enter 3 characters (or press F2 or <ESC> to Quit)
  547.        [[           ]]
  548.                                                                 >1<
  549.      Will display like:
  550.      >2<
  551. @str min3
  552. @ACCEPTFK f2,esc
  553.        Please enter 3 characters (or press F2 or <ESC> to Quit)
  554.        [           ]
  555.                                                                 >2<
  556. @end
  557. @nf banner
  558. @head centre,@BANNER
  559. $R$
  560. @border
  561.  
  562.      To  insert the line of data set up using HEADING  directives
  563.      into the screen template, normally as the first  displayable
  564.      line.   This has been done at the top of the current  screen
  565.      as follows:
  566.  
  567.         @head left,"^RSCR Directives"
  568.         @head right,"Copyright (c) FmP 1991^R"
  569.         @head centre,@BANNER
  570.         @banner
  571.  
  572.      See @heading directive.
  573. @end
  574. @nf bbmenu
  575. @head centre,@BBMENU
  576. $R$
  577. @border
  578.  
  579.      A BBMENU directive may be used to define a menu screen which
  580.      will be displayed by the Taskmaster MENU (or PUT) command as
  581.      a  "Bounce-Bar"  menu.   The alternative is to  use  a  MENU
  582.      directive.
  583.  
  584.      @BBMENU foreground,background
  585.  
  586.      (You used a bounce bar-menu to display this template).
  587. @end
  588. @nf bbimenu
  589. @head centre,@BBIMENU
  590. $R$
  591. @border
  592.  
  593.      A  BBIMENU directive is like a BBMENU except  that  pressing
  594.      the first character will immediately cause selection of  the
  595.      next  topic starting with that letter without  the   key
  596.      being pressed.
  597.  
  598.      @BBIMENU foreground,background
  599.  
  600.      (Not  normally used when 2 or more topics have same  initial
  601.      letter)
  602. @end
  603. @nf border
  604. @head centre,@border
  605. $R$
  606. @border
  607.  
  608.      A  BORDER directive is the easy way to draw a  frame  around
  609.      the screen as can be seen on this screen.
  610.  
  611.      @BORDER {{foreground}}
  612.  
  613.      The  border will commence on the current line and finish  on
  614.      the  last  line.  The border is always drawn in double  line
  615.      graphic  characters.
  616.  
  617.      Even  if you specify a colour the current foreground  colour
  618.      will be automatically restored.
  619.  
  620.      If you wish to use the current foreground colour there is no
  621.      need to specify it.
  622. @border
  623.  
  624.      Second  and  subsequent instances of @border in a  form  will
  625.      cause the appropriate intersection characters to be  used  in
  626.      lieu of upper left and upper right characters. As here...
  627. @end
  628.  
  629. @nf BRIght
  630. @head centre,@BRIGHT
  631. $R$
  632. @border
  633.  
  634.      Sets the intensity bit in the video adapter.
  635. @BRIGHT
  636.      It has just been used...
  637. @DIM
  638.      Now turned off via @dim.
  639. @end
  640. @nf m1
  641. @col page,cyan,blue
  642. @head centre,"Browse Menu Two"
  643. $R$
  644. $D$
  645. @GON
  646. 7----------8-------------------------------------8-------------------------9
  647. 0DIRECTIVE 0  DATA TYPE / DESCRIPTION            0 KEYWORDS                0
  648. 4----------5-------------------------------------5-------------------------6
  649. 0{COLOUR   }0  Used to specify page and character 0 CHAR,PAGE, and          0
  650. 0          0  colours. e.g. @COL CHAR,RED,BLACK  0 those listed            0
  651. 0          0                                     0 for BBMENU              0
  652. 4----------5-------------------------------------5-------------------------6
  653. 0{DATE     }0  A date in UK or US format.         0                         0
  654. 4----------5-------------------------------------5-------------------------6
  655. 0{DEFAULTS }0  Specifies colours and intensity    0 DIM,BRIGHT and COLOURs  0
  656. 4----------5-------------------------------------5-------------------------6
  657. 0{DF       }0  As @NF but display the form after  0                         0
  658. 0          0  processing in its final form.      0                         0
  659. 4----------5-------------------------------------5-------------------------6
  660. 0{DIM      }0  Sets half intensity mode.          0                         0
  661. 4----------5-------------------------------------5-------------------------6
  662. 0{DOUBLE   }0  Sets double line graphics mode     0                         0
  663. 4----------5-------------------------------------5-------------------------6
  664. 0{DRAW     }0  Allows graphic shapes to be drawn. 0                         0
  665. 4----------5-------------------------------------5-------------------------6
  666. 0{END      }0  End of form.                       0                         0
  667. 1----------2-------------------------------------2-------------------------3
  668. @goff
  669. $W$
  670. $M$
  671. @end
  672.  
  673. @nf colour
  674. @head centre,@COLOUR
  675. $R$
  676. @border
  677.  
  678.      To change the colour of the rest of the screen.
  679.      @COLour CHAR,FOREGROUND,BACKGROUND
  680.      or
  681.      @COLour  PAGE,FOREGROUND,BACKGROUND
  682.      (Clears to end of page in specified colours)
  683.  
  684.      Valid FOREGROUND/BACKGROUND values
  685.  
  686.      RED WHITE CYAN GREEN BLACK MAGENTA YELLOW BLUE
  687.  
  688. @bright
  689.      Example:
  690. @draw
  691.      >1<
  692.        @col char,yellow,blue
  693.        Character colour set to yellow on blue.
  694.                                              >1<
  695.      Displays like:
  696.      >2<
  697. @col char,yellow,blue
  698.        Character colour set to yellow on blue.
  699.                                              >2<
  700. $C$
  701. @end
  702.  
  703. @nf date
  704. @col page,cyan,blue
  705. @head centre,@DATE
  706. $R$
  707. @border
  708.  
  709. @date optional
  710.      A  date directive is used to define an  "unprotected  field"
  711.      for a date.
  712.  
  713.      @DATE {{OPTIONAL}}
  714.  
  715. @bright
  716.      Example:
  717. @draw
  718.      >1<
  719.        @date optional
  720.        Please enter a valid date{[        ]}
  721.                                             >1<
  722.      Displays like:
  723.      >2<
  724. @col char,yellow,blue
  725.        Please enter a valid date [        ]
  726.                                              >2<
  727.  
  728. @dim
  729. $C$
  730.      The MS-DOS country code is used to determine the default date format;
  731.      US  country  code forces US date format i.e.  mm/dd/yy,  other  codes
  732.      force  UK format i.e dd/mm/yy.  You may force Taskmaster to  validate
  733.      date to the U.S. format by the /U command line flag.
  734. $N$
  735. @end
  736.  
  737. @nf dim
  738. @head centre,@DIM
  739. $R$
  740. @border
  741.  
  742.      Turns off intensify mode if set.  See @bright.
  743. @end
  744.  
  745. @nf defaults
  746. @head centre,@DEFAULTS
  747. $R$
  748. @border
  749.  
  750.      Each  time  SCR encounters a @df or  @nf  directive  certain
  751.      defaults  are reset.  The @defaults directive allows you  to
  752.      determine what values are used for three of these  defaults,
  753.      namely:
  754.  
  755.      The intensity BRIGHT or DIM,  the foreground colour and  the
  756.      background colour.
  757.  
  758.      Example:
  759.  
  760.      To  ensure  that following forms are by default in  CYAN  on
  761.      BLUE at DIM intensity:
  762.  
  763.      @DEFAULTS DIM,CYAN,BLUE
  764. @end
  765. @nf df
  766. @head centre,@df
  767. $R$
  768. @border
  769.  
  770.      The  DISPLAYFORM  directive  is  identical  to  the  NEWFORM
  771.      directive except that it results in the processed form being
  772.      displayed on the screen after successful processing.
  773.  
  774.      @df FORMNAME {{,MODE0}}
  775.  
  776.      Mode0 sets the video into a 40 character mode.
  777. @end
  778.  
  779. @nf double
  780. @head centre,@DOUBLE_LINE
  781. $R$
  782. @border
  783.  
  784.      When  in  graphics mode all numeric digits and  minus  signs
  785.      have  special  meaning  they  are  translated  into  graphic
  786.      shapes;  see the GON directive.
  787.  
  788. @DOUBLE_LINE
  789.      @DOUBLE_LINE  ensures  that the shapes are composed  of  the
  790.      double line characters (01234567890-).
  791.  
  792.      Within lines the ^Y character will toggle between single and
  793.      double line modes.
  794. @end
  795. @nf draw
  796. @head centre,@DRAW
  797. $R$
  798. @border
  799.  
  800.      If  a DRAW directive has been encountered previously in  the
  801.      current template the "pairs" of characterd enclosed in > and
  802.      <  will be interpreted as opposite corners of  a  rectangle.
  803.      Any identifier in the range 0-9 or A-Z is permissable.
  804.  
  805.      Otherwise,  character  sequences  such as >1<  will  not  be
  806.      interpreted as special symbols.
  807.  
  808.      @DRAW not yet specified
  809.           >A<          >Y<
  810.               >W<
  811.                    >A<
  812.                                >W<
  813.                                        >Y<
  814.      @DRAW now specified
  815. @draw
  816.           >A<          >Y<
  817.               >W<
  818.                    >A<
  819.                                >W<
  820.                                        >Y<
  821. @end
  822.  
  823. @nf end
  824. @head centre,@END
  825. $R$
  826. @border
  827.  
  828.      Denotes the end of the current form.
  829. @end
  830.  
  831. @nf filename
  832. @head centre,@FILENAME
  833. $R$
  834. @border
  835.  
  836.      To  declare an unprotected field requiring validation  as  a
  837.      MS-DOS  filename.  If the keyword OPTIONAL is  present  then
  838.      the  field  may  be left blank.  If however  characters  are
  839.      entered  they  will  be  validated.  The keyword  EXISTS  if   
  840.      present, instructs Taskmaster to make sure that the file can 
  841.      be  opened  for  reading.    The name given may  be  a  full 
  842.      hierarchical filename.
  843.  
  844.      @FILename   {{OPTIONAL}}{{EXISTS}}
  845. @end
  846. @nf m2
  847. @col page,cyan,blue
  848. @head centre,"Browse Menu Three"
  849. $R$
  850. $D$
  851. @GON
  852. 7----------8-------------------------------------8-------------------------9
  853. 0DIRECTIVE 0  DATA TYPE / DESCRIPTION            0 KEYWORDS                0
  854. 4----------5-------------------------------------5-------------------------6
  855. 0{FILENAME }0  Defines a filename field.          0                         0
  856. 4----------5-------------------------------------5-------------------------6
  857. 0{GOFF     }0  Turns off graphics mode.           0                         0
  858. 4----------5-------------------------------------5-------------------------6
  859. 0{GON      }0  Turns on graphics mode.            0                         0
  860. 4----------5-------------------------------------5-------------------------6
  861. 0{HEADING  }0  Heading - automatic centreing      0 LEFT                    0
  862. 0          0  within the line.  Declared values  0 RIGHT                   0
  863. 0          0  are displayed by @BANNER directive.0 CENTRE                  0
  864. 4----------5-------------------------------------5-------------------------6
  865. 0{LIST     }0  A list of 1-4 choice characters.   0                         0
  866. 4----------5-------------------------------------5-------------------------6
  867. 0{LOGICAL  }0  A logical value which may be either0                         0
  868. 0          0  Y for YES, or N for NO.            0                         0
  869. 4----------5-------------------------------------5-------------------------6
  870. 0{MAP      }0  Defines a character and its        0                         0
  871. 0          0  replacement for use in subsequent  0                         0
  872. 0          0  translation during processing.     0                         0
  873. 1----------2-------------------------------------2-------------------------3
  874. @goff
  875. $W$
  876. $M$
  877. @end
  878.  
  879. @nf GOFF
  880. @head centre,@GOFF
  881. $R$
  882. @border
  883.  
  884.      Turns  Graphics-mode  OFF as set by a @GON directive  or  an
  885.      embedded  ^X  character.   Also  stops  the  action  of  the
  886.      @TRANSLATE directive.
  887.  
  888.      Example:
  889. @DRAW
  890.      >1<
  891.        @gon
  892.        7--------8-----------9
  893.        0Name    0Number     0
  894.        4--------5-----------6
  895.        @goff
  896.        Copyright (c) FmP 1991
  897.                             >1<
  898.      Displays as:
  899.      >2<
  900. @gon
  901.        7--------8-----------9
  902.        0Name    0Number     0
  903.        4--------5-----------6
  904. @goff
  905.        Copyright (c) FmP 1991
  906.                             >2<
  907. @end
  908.  
  909. @nf GON
  910. @head centre,@GON
  911. $R$
  912. @border
  913.  
  914.      Turns Graphics-mode ON. This directive has two purposes;
  915.  
  916.      1.   To effect the translation of numbers encountered in the
  917.           form  into graphic shapes in accordance with the  table
  918.           below:
  919.  
  920.      2.   To activate the @TRANSLATE and SOFT directives.
  921.  
  922.           Single line characters:         Double line characters:
  923.  
  924.           7 7   8 8   9 9                 7 7   8 8   9 9
  925.  
  926.           4 4   5 5   6 6                 4 4   5 5   6 6
  927.  
  928.           1 1   2 2   3 3                 1 1   2 2   3 3
  929.  
  930.           0 0   - -                       0 0   - -
  931.  
  932.           See @SINGLE_LINE and @DOUBLE_LINE
  933. @end
  934.  
  935. @nf HEADing
  936. @head centre,@HEADING
  937. $R$
  938. @border
  939.  
  940.      A  HEADING directive is used to define part of the  contents
  941.      of   the   line  displayed  when  a  BANNER   directive   is
  942.      encountered.  The  line consists of three  component  parts,
  943.      each defined by a HEADING directive.
  944.  
  945.      @HEADing PART,text_string
  946.      @HEADing PART,literal
  947.      PART = LEFT   defines the left hand part of BANNER
  948.           = RIGHT  defines the right hand part of BANNER
  949.           = CENTRE defines the centre part of BANNER
  950.  
  951.      To  prevent  lower-case characters from being  converted  to
  952.      upper-case  within  the  text of  the  heading,  you  should
  953.      enclose the text inside single or double quotes.
  954.  
  955.      Control characters may be present in the headings to control
  956.      colour, reverse or intensity etc.
  957.  
  958.      The following 2 lines were used to produce the above banner:
  959.      @head centre,"@HEADING"
  960.      @banner
  961. @end
  962.  
  963. @nf LIST
  964. @col page,cyan,blue
  965. @head centre,@LIST
  966. $R$
  967. @border
  968.  
  969. @list OEC
  970.      This  directive  defines an unprotected field to  contain  a
  971.      single character.   The character is compared against a list
  972.      of 1-4 characters and if it is not in the supplied list,  it
  973.      is rejected.
  974.  
  975.      Thus it is useful for simple "choice" fields.
  976.  
  977.      @LIST abcd
  978.  
  979.      Example:
  980. @draw
  981.      >1<
  982.        @list OEC
  983.        O_rder, E_nquiry, C_omplaint (Enter O, E or C){[ ]}
  984.                                                         >1<
  985.      Displays as:
  986.      >2<
  987.        O_rder, E_nquiry, C_omplaint (Enter O, E or C) [ ]
  988.                                                         >2<
  989. $N$
  990. @end
  991.  
  992. @nf LOGical
  993. @col page,cyan,blue
  994. @head centre,@LOGICAL
  995. $R$
  996. @border
  997. @logical
  998.  
  999.      A logical directive is used to define an "unprotected field"
  1000.      for a logical value.  Acceptable responses are 'y', 'Y', 'n'
  1001.      and 'N'
  1002.  
  1003.      It is therefore ideal for asking questions.
  1004.  
  1005.      @LOGical    {{OPTIONAL}}
  1006.  
  1007.      Example:
  1008. @draw
  1009.      >1<
  1010.        @logical
  1011.        Print the invoice{[ ]}
  1012.                             >1<
  1013.      Displays as:
  1014.      >2<
  1015.        Print the invoice [ ]
  1016.                             >2<
  1017. $N$
  1018. @end
  1019. @nf  key
  1020. @head centre,@key
  1021. $R$
  1022. @border
  1023.  
  1024.      Overcomes  the  following limitations or the  first  character  search 
  1025.      mechanism in bounce-bar menus: The first characters are not  specially 
  1026.      highlighted so it might not be obvious that the facility is available;  
  1027.      and  the first character is not always the most  appropriate  shortcut  
  1028.      character.   
  1029.  
  1030.      The  KEY directive allows any desired character within  a topic to  be 
  1031.      designated  as an "action character" (by preceding it with ^K) and  to 
  1032.      nominate  the colour and intensity to be used for display.
  1033.  
  1034.      Example:
  1035. @draw
  1036.      >1<
  1037.        @bbmenu cyan,blue
  1038.        @key bright,white,blue
  1039.        {{Run the ^KAccounts system }}{{Run the monthly ^KPayroll }}
  1040.        {{Take a ^KBackup of todays transactions }}
  1041.                                                                >1<
  1042.      Displays as:
  1043. @win line21,column 10,depth2,width 60
  1044. @bbmenu cyan,blue
  1045. @key bright,white,blue
  1046.  {Run the  Accounts system }{Run the monthly  Payroll }
  1047.  {Take a  Backup of todays transactions }
  1048. @colour char,white,blue
  1049. @win line23,column3,depth1,width1
  1050. Select and press <> or press a highlighted key
  1051. @colour char,cyan,blue
  1052. @end
  1053. @nf bbhelp
  1054. @head centre,@bbhelp
  1055. $R$
  1056. @border
  1057.  
  1058.      The UNIX version of Taskmaster has long had a facility whereby when  a 
  1059.      topic of a bounce-bar menu is highlighted; a line of help is displayed 
  1060.      at a nominated screen location to explain its function.
  1061.  
  1062.      The BBHELP command defines the colour, intensity, width and  placement 
  1063.      of such help lines.   The lines themselves are defined using @help.  
  1064.  
  1065.      Example:
  1066. @draw
  1067.      >1<
  1068.        @bbmenu cyan,blue
  1069.        {{Backups }}{{Wordprocessing }}{{Executive WP }}
  1070.        @bbhelp line20,column1,width 50,bright,white,blue
  1071.        @help ' This should be done daily'
  1072.        @help ' This wordprocessor is configured for the laser'
  1073.        @help ' Drives this daisywheel next door'
  1074.                                                               >1<
  1075. @win line19,column 10,depth2,width 60
  1076. @bbmenu cyan,blue
  1077. {Backups }{Wordprocessing }{Executive WP }
  1078. @bbhelp line20,column10,width 50,bright,white,blue
  1079. @help ' This should be done daily'
  1080. @help ' This wordprocessor is configured for the laser'
  1081. @help ' Drives this daisywheel next door'
  1082. @colour char,white,blue
  1083. @win line23,column3,depth1,width1
  1084. Press <SPACE> repeatedly to see the effect, then press <>
  1085. @colour char,cyan,blue
  1086. @end
  1087. @nf help
  1088. @head centre,@help
  1089. $R$
  1090. @border
  1091.  
  1092.      See BBHELP.
  1093. @end
  1094. @nf line
  1095. @head centre,@line
  1096. $R$
  1097. @border
  1098.  
  1099.      The  LINE directive is used in association with @WINDOW and  @OUTLINE.  
  1100.      It describes a horizontal line intersecting an existing outline.  Note 
  1101.      that the @LINE directive is counted as a display line.
  1102.  
  1103.      Example:
  1104. @draw
  1105.      >1<
  1106.        @window line17,column10,depth 5,width 60
  1107.        @out cyan
  1108.  
  1109.         First line of text
  1110.        @line
  1111.         Second line of text
  1112.                                                    >1<
  1113.      Displays as:
  1114. @window line17,column10,depth 5,width 60
  1115. @out cyan
  1116.  
  1117.  First line of text
  1118. @line
  1119.  Second line of text
  1120. @end
  1121. @nf MAP
  1122. @head centre,@MAP
  1123. $R$
  1124. @border
  1125. @map x,de
  1126.  
  1127.      A  MAP  directive  is  used to  define  a  character  to  be
  1128.      translated when encountered in a form.  The purpose of  such
  1129.      a  mapping is to simplify definition of non-textual data  on
  1130.      the screen. Mapping not done until @TRANSLATE encountered.
  1131.  
  1132.      @MAP a,hh
  1133.  
  1134.      a  = is a character to be mapped and may be any  displayable
  1135.           character, if lower case must be enclosed in quotes.
  1136.      hh = the hex value of the replacement char in the range 00-FE
  1137.  
  1138.      Example:
  1139. @draw
  1140.      >1<
  1141.        @map x,de
  1142.        @translate
  1143.        XXXXXXXXX Turning Graphic mode on ^XXXXXXXX^X
  1144.                                                    >1<
  1145.      Displays as:
  1146.      >2<
  1147. @translate
  1148.        XXXXXXXXX Turning Graphic mode on XXXXXXXX
  1149.                                                    >2<
  1150. @end
  1151. @nf SHADOW
  1152. @head centre,@SHADOW
  1153. $R$
  1154. @border
  1155.  
  1156.      The  SHADOW directive is used with the @DROP directive.  It  specifies 
  1157.      the  colours  and  intensity to be used for the shadow  in  drop  down 
  1158.      menus.  
  1159.  
  1160.      Example:
  1161. @draw
  1162.      >1<
  1163.        @shadow bright,black,white
  1164.                                                    >1<
  1165. @end
  1166. @nf drop
  1167. @head centre,@drop
  1168. $R$
  1169. @border
  1170.  
  1171.      A  drop-down  is  a menu or form which restores the  contents  of  the 
  1172.      screen  after use.  The  DROP directive is used to declare a  template 
  1173.      as  a drop-down.  The placement of the drop-down may be calculated  at 
  1174.      run-time (by use of the under keyword parameter) to be related to  the 
  1175.      position of the highlight of the previous bounce-bar menu.  The number 
  1176.      of  lines  beneath the menu may be controlled by the offset  count;  1 
  1177.      being the default (= 1 line beneath topic). 
  1178.  
  1179.      When  displayed  the  drop-down has a shadow the colour  of  which  is 
  1180.      controlled by the SHADOW directive.  
  1181.  
  1182.      Example:
  1183. @draw
  1184.      >1<
  1185.        @window line0,column0,depth4,width 20
  1186.        @bbmenu cyan,blue
  1187.        @drop under,offset 2
  1188.        {topic one }
  1189.        {topic two }
  1190.                                                    >1<
  1191.      Taskmaster  will  relocate the drop-down if it won't fit  beneath  the 
  1192.      highlight (aligning the shadow with the right or bottom edge as reqd). 
  1193. @end
  1194. @nf  OUTLINE
  1195. @head centre,@OUTLINE
  1196. $R$
  1197. @border
  1198.  
  1199.      The OUTLINE directive offers a simple way or surrounding a windoe with 
  1200.      a  graphic  border in any desired colour.  SCR will  ensure  that  the 
  1201.      colour of the rest of the screen is not affected by the OUTLINE.   Any 
  1202.      text placed on the line immediately following the  @OUTLINE  directive 
  1203.      will overwrite the top line of the outline.  See also @LINE.
  1204.  
  1205.      Example:
  1206. @draw
  1207.      >1<
  1208.        @window line18,column10,depth4,width 60
  1209.        @out cyan
  1210.  
  1211.         First line of text
  1212.         Second line of text
  1213.                                                    >1<
  1214.      Displays as:
  1215. @window line18,column10,depth 4,width 60
  1216. @out cyan
  1217.  
  1218.  First line of text
  1219.  Second line of text
  1220. @end
  1221.  
  1222. @nf MENu
  1223. @head centre,@MENU
  1224. $R$
  1225. @border
  1226.  
  1227.      A   MENU  directive  is used to define  a  conventional   menu  screen  
  1228.      (as   opposed   to a bounce-bar menu  or  a   form).   A  conventional  
  1229.      menu must have a single unprotected  field  on the  screen,  which  is  
  1230.      used to  receive  a  numeric  value corresponding to a selection  from 
  1231.      a list of options.
  1232.  
  1233.      @MENu OPTnn
  1234.  
  1235.      where nn is the number of options and is mandatory
  1236.  
  1237. @draw
  1238.      >1<
  1239.        @MENu OPT4
  1240.           1.   Wordprocessing
  1241.           2.   Spreadsheets
  1242.           3.   Fiscal Planning
  1243.           4.   Quit [[ ]]
  1244.                                  >1<
  1245.      The text is entirely arbitrary.  Conventional menus MUST  be displayed 
  1246.      using the Taskmaster MENU command.
  1247. @end
  1248. @nf m3
  1249. @col page,cyan,blue
  1250. @head centre,"Browse Menu Four"
  1251. $R$
  1252. $D$
  1253. @GON
  1254. 7----------8-------------------------------------8-------------------------9
  1255. 0DIRECTIVE 0  DATA TYPE / DESCRIPTION            0 KEYWORDS                0
  1256. 4----------5-------------------------------------5-------------------------6
  1257. 0{MENU     }0  A choice from a list of numbers.   0 OPT                     0
  1258. 4----------5-------------------------------------5-------------------------6
  1259. 0{NF       }0  Start of a new form. Initialises   0                         0
  1260. 0          0  form related attributes.           0                         0
  1261. 4----------5-------------------------------------5-------------------------6
  1262. 0{NUMBER   }0  A numeric value in range 0-65535.  0 MIN,MAX                 0
  1263. 4----------5-------------------------------------5-------------------------6
  1264. 0{OVERLAY  }0  Allows two or more screens to be   0                         0
  1265. 0          0  overlayed on top of each other.    0                         0
  1266. 4----------5-------------------------------------5-------------------------6
  1267. 0{PATH     }0  Allows a path to an existing       0                         0
  1268. 0          0  MS-DOS directory.                  0                         0
  1269. 4----------5-------------------------------------5-------------------------6
  1270. 0{PRINTER  }0  Allows a valid MS-DOS printer      0                         0
  1271. 0          0  identifier PRN1-3 CON1-2           0                         0
  1272. 1----------2-------------------------------------2-------------------------3
  1273. @goff
  1274. $W$
  1275. $M$
  1276. @end
  1277.  
  1278. @nf NF
  1279. @head centre,@NF
  1280. $R$
  1281. @border
  1282.  
  1283.      A NEWFORM directive marks the start of a form,  resets  form
  1284.      related variables and activates text processing.
  1285.  
  1286.      @NF FORMNAME {{,MODE0}}
  1287.  
  1288.      Typical text template:
  1289. @draw
  1290.      >1<
  1291.        @NF NAME
  1292.        This  is  the text that the user  will  see  when
  1293.        Taskmaster  encounters a PUT "NAME"  command.   A
  1294.        clear  screen is provided  by  default.   Colours
  1295.        and intensity are also reset.  See @DEFAULTS.
  1296.        @end
  1297.                                                        >1<
  1298. @end
  1299.  
  1300. @nf NUMBER
  1301. @col page,cyan,blue
  1302. @head centre,@NUMBER
  1303. $R$
  1304. @border
  1305.  
  1306. @num min1,max52
  1307.      A  NUMBER directive is used to define an "unprotected field"
  1308.      to contain a numeric value.
  1309.  
  1310.      @NUMber  {{MIN nn}}
  1311.      @NUMber  {{MAX nn}}
  1312.      @NUMber  {{MIN nn}}{{,MAX nn}}
  1313.  
  1314.    Example:
  1315. @draw
  1316.    >1<
  1317.      @num min1,max52
  1318.  
  1319.      Please enter the week number{[  ]}
  1320.                                       >1<
  1321.    Will display like this:
  1322.    >2<
  1323.  
  1324.      Please enter the week number [  ]
  1325.                                       >2<
  1326. $N$
  1327. @end
  1328.  
  1329. @nf OVERLAY
  1330. @head centre,@OVERLAY
  1331. $R$
  1332. @border
  1333.  
  1334.      This  directive  complements  the  NOCLEAR  keyword  on  the
  1335.      Taskmaster  "PUT" command. @OVERLAY causes the clear  screen
  1336.      which is normally at the start of a form to be replaced by a
  1337.      "home  cursor"  sequence.  The  effect  is  to  display  the
  1338.      "overlay" screen on top of any existing screen data.
  1339. @end
  1340.  
  1341. @nf PATH
  1342. @head centre,@PATH
  1343. $R$
  1344. @border
  1345.  
  1346.      Used  to define a field for pathname validation.   The  path
  1347.      entered will be validated according to MS-DOS convention. It
  1348.      may  start  with a drive letter and colon.  To  specify  the
  1349.      root directory the user will have to enter either:
  1350.  
  1351.      [[\                              ]]
  1352.  
  1353.      or
  1354.  
  1355.      [[D:\                            ]]
  1356.  
  1357.      Where  D  is the drive identifier.  In all other  cases  the
  1358.      trailing \ is not required (or permitted).
  1359.  
  1360.      The  @PATH directive is intended solely for the entry of path
  1361.      names and should not be used to validate filenames.
  1362.  
  1363.      The  current directory symbol (.) and the  parent  directory
  1364.      symbol (..) may be used.
  1365. @end
  1366.  
  1367. @nf PRINTER
  1368. @col page,cyan,blue
  1369. @head centre,@PRINTER
  1370. $R$
  1371. @border
  1372. @printer
  1373.  
  1374.      Used to define a field for printer name validation.
  1375.  
  1376.      The name entered in the field at run time will be  validated
  1377.      against the following list:
  1378.  
  1379.      LPT1 LPT2 LPT3 COM1 COM2 AUX PRN
  1380.  
  1381.      Example:
  1382. @draw
  1383.      >1<
  1384.        @printer
  1385.        Which printer do you wish to use? {[    ]}
  1386.                                                >1<
  1387.      Displays as:
  1388.      >2<
  1389.        Which printer do you wish to use?  [    ]
  1390.                                                >2<
  1391. $N$
  1392. @end
  1393.  
  1394. @nf RANGE
  1395. @col page,cyan,blue
  1396. @head centre,@RANGE
  1397. $R$
  1398. @border
  1399. @RANGE A,F
  1400.  
  1401.      This  directive  defines an unprotected field to  contain  a
  1402.      single character.   The character when input must lie within
  1403.      a defined range of values.
  1404.  
  1405.      @RANGE min,max
  1406.  
  1407.      min  is any char taken from the displayable character set.
  1408.  
  1409.      max  is a character taken from the displayable character set
  1410.           and  having a higher ascii value than "min",  according
  1411.           to the collating sequence.
  1412.  
  1413.      Example:
  1414. @draw
  1415.      >1<
  1416.        @RANGE A,F
  1417.        Which DRIVE do you wish to use?{[ ]} (enter A-F)
  1418.                                                       >1<
  1419.      Displays as:
  1420.      >2<
  1421.        Which DRIVE do you wish to use? [ ]  (enter A-F)
  1422.                                                       >2<
  1423. $N$
  1424. @end
  1425. @nf m4
  1426. @col page,cyan,blue
  1427. @head centre,"Browse Menu Five"
  1428. $R$
  1429. $D$
  1430. @GON
  1431. 7----------8-------------------------------------8-------------------------9
  1432. 0DIRECTIVE 0  DATA TYPE / DESCRIPTION            0 KEYWORDS                0
  1433. 4----------5-------------------------------------5-------------------------6
  1434. 0{RANGE    }0  A range of values for a field      0                         0
  1435. 0          0  between 2 specified characters in  0                         0
  1436. 0          0  the ASCII collating sequence.      0                         0
  1437. 4----------5-------------------------------------5-------------------------6
  1438. 0{REPEAT   }0  Duplicates the following line      0 x (followed by a count) 0
  1439. 4----------5-------------------------------------5-------------------------6
  1440. 0{SINGLE   }0  Sets single line graphics mode     0                         0
  1441. 4----------5-------------------------------------5-------------------------6
  1442. 0{SOFT     }0  Suppresses display of spaces found 0                         0
  1443. 0          0  within lines when in Graphic-mode. 0                         0
  1444. 4----------5-------------------------------------5-------------------------6
  1445. 0{SPACES   }0  Declares a value for substitution  0 LEN                     0
  1446. 0          0  in following fields containing _   0                         0
  1447. 0          0  as their first 2 characters.       0                         0
  1448. 4----------5-------------------------------------5-------------------------6
  1449. 0{STRING   }0  A String of characters.            0 MIN (length)            0
  1450. 4----------5-------------------------------------5-------------------------6
  1451. 0{TIME     }0  A TIME in the format HH:MM.        0                         0
  1452. 1----------2-------------------------------------2-------------------------3
  1453. @goff
  1454. $W$
  1455. $M$
  1456. @end
  1457. @nf repeat
  1458. @head centre,@REPEAT
  1459. $R$
  1460. @border
  1461.  
  1462.      This directive can be used to save source file space when  a
  1463.      number  of  lines are repeated 2 or more times in  the  same
  1464.      form.
  1465.  
  1466.      Example:
  1467. @draw
  1468.      >1<
  1469.        @gon
  1470.        7------------8---------------8--------------9
  1471.        @repeat x4
  1472.        0            0               0              0
  1473.        1------------2---------------2--------------3
  1474.                                                        >1<
  1475.      Displays as:
  1476.      >2<
  1477. @GON
  1478.        7------------8---------------8--------------9
  1479. @repeat x4
  1480.        0            0               0              0
  1481.        1------------2---------------2--------------3
  1482.                                                        >2<
  1483. @end
  1484. @nf single
  1485. @head centre,@SINGLE_LINE
  1486. $R$
  1487. @border
  1488.  
  1489.      When  in  graphics mode all numeric digits and  minus  signs
  1490.      have  special  meaning  they  are  translated  into  graphic
  1491.      shapes;  see the GON directive.
  1492.  
  1493. @SINGLE_LINE
  1494.      @SINGLE_LINE  ensures  that the shapes are composed  of  the
  1495.      single line characters (01234567890-).
  1496.  
  1497.      Within lines the ^Y character will toggle between single and
  1498.      double line modes.
  1499. @end
  1500.  
  1501. @nf SOFT
  1502. @head centre,@SOFT
  1503. $R$
  1504. @border
  1505.  
  1506.      A SOFT directive is used when space characters within  lines
  1507.      are  required  to be in page background colour and  not  the
  1508.      normal character background colour. It is only effective  in
  1509.      Graphics mode - see @GON directive.
  1510.  
  1511.      Example:
  1512. @draw
  1513.      >1<
  1514.        @col page,cyan,blue
  1515.        @col char,white,red
  1516.        Without @soft SPACES are CHAR background colour.
  1517.        @soft
  1518.        @gon
  1519.        Using @soft SPACES are PAGE background colour.
  1520.                                                        >1<
  1521.      Displays as:
  1522. @border
  1523. @gon
  1524. @dou
  1525.  
  1526. @col char,white,red
  1527.      >2<
  1528.        Without @soft SPACES are CHAR background colour.
  1529. @soft
  1530.        Using @soft SPACES are PAGE background colour.
  1531.                                                        >2<
  1532. @end
  1533.  
  1534. @nf SPACES
  1535. @col page,cyan,blue
  1536. @head centre,@SPACES
  1537. $R$
  1538. @border
  1539. @str
  1540. @str
  1541.  
  1542.      Pre-defines the number of space characters to substitute  in
  1543.      place of an underscore character found within [[ and ]].
  1544.  
  1545.      When  you want to avoid counting the exact number of  spaces
  1546.      within an unprotected field,  this directive can be used  in
  1547.      conjunction with _ (underscore).
  1548.  
  1549.      @SPACEs LENnn
  1550.      Example:
  1551. @draw
  1552.      >1<
  1553.        @str
  1554.        @str
  1555.        @spaces len40
  1556.        Address line one {[_]}
  1557.        Address line two {[_]}
  1558.                                                                   >1<
  1559.      Displays as:
  1560. @spaces len40
  1561.      >2<
  1562.        Address line one [_]
  1563.        Address line two [_]
  1564.                                                                   >2<
  1565. $N$
  1566. @end
  1567.  
  1568. @nf STRing
  1569. @col page,cyan,blue
  1570. @str
  1571. @str
  1572. @head centre,@STRING
  1573. $R$
  1574. @border
  1575.  
  1576.      A STRING directive is used to define an "unprotected  field"
  1577.      for any character string.
  1578.  
  1579.      @STRing {{MIN nn}} {{,CONVERT}}
  1580.  
  1581.      Example
  1582. @draw
  1583.      >1<
  1584.        @str
  1585.        @str
  1586.        Please enter your username {[          ]}
  1587.                      and password {[!         ]}
  1588.                                                            >1<
  1589.      Displays as:
  1590.      >2<
  1591.        Please enter your username [          ]
  1592.                      and password [!         ]
  1593.                                                            >2<
  1594.  
  1595.      (Note  that  the ! character suppresses echo  of  characters
  1596.      entered into second field - cannot be used on other field types)
  1597. $N$
  1598. @end
  1599.  
  1600. @nf TIME
  1601. @col page,cyan,blue
  1602. @head centre,@TIME
  1603. $R$
  1604. @border
  1605. @time
  1606.  
  1607.      A  TIME directive is used to define an  "unprotected  field"
  1608.      for a time entered in the format HH:MM.
  1609.  
  1610.      @TIME      {{OPTIONAL}}
  1611.  
  1612.      The format for a time is HH:MM.
  1613.  
  1614.      Example
  1615. @draw
  1616.      >1<
  1617.        @time
  1618.        At what time do you want to start the Archive? [[     ]] hh:mm
  1619.                                                                   >1<
  1620.      Displays as:
  1621.      >2<
  1622.        At what time do you want to start the Archive? [     ] hh:mm
  1623.                                                                   >2<
  1624. $N$
  1625. @end
  1626. @nf m5
  1627. @col page,cyan,blue
  1628. @head centre,"Browse Menu Six"
  1629. $R$
  1630. $D$
  1631. @GON
  1632. 7-----------8-------------------------------------8-------------------------9
  1633. 0DIRECTIVE  0  DATA TYPE / DESCRIPTION            0 KEYWORDS                0
  1634. 4-----------5-------------------------------------5-------------------------6
  1635. 0{TRANSLATE }0  Effects translation of the mapped  0                         0
  1636. 0           0  characters as defined by @MAP      0                         0
  1637. 0           0  directive.                         0                         0
  1638. 4-----------5-------------------------------------5-------------------------6
  1639. 0{USERLINE  }0  Defines data for line 25           0                         0
  1640. 4-----------5-------------------------------------5-------------------------6
  1641. 0{VIDEO     }0  Declares the video definition      0 Filename.DEF            0
  1642. 0           0  name. Must be the first directive. 0                         0
  1643. 4-----------5-------------------------------------5-------------------------6
  1644. 0{WINDOW    }0  Enables windows to be drawn on the 0                         0
  1645. 0           0  screen at desired locations.       0                         0
  1646. 0           0  Coloured windows are supported.    0                         0
  1647. 1-----------2-------------------------------------2-------------------------3
  1648. @goff
  1649. $W$
  1650. @use 'SCRMAN <F1>=HELP, <PgUp>=previous menu <esc>=Main menu'
  1651. @end
  1652.  
  1653. @nf TRANSLATE
  1654. @head centre,@TRANSLATE
  1655. $R$
  1656. @border
  1657.  
  1658.      A  TRANSLATE directive is used to effect the translation  of
  1659.      characters as defined by any preceding MAP directives.
  1660.  
  1661.      Must  be used in combination with Graphic mode which is  set
  1662.      by @GON or an embedded ^X character.
  1663.  
  1664.      Example
  1665. @draw
  1666.      >1<
  1667.        @MAP T,de
  1668.        @translate
  1669.        Translation only occurs in Graphic mode ^X123T^X
  1670.                                                        >1<
  1671.      Displays as:
  1672.      >2<
  1673. @MAP T,de
  1674. @translate
  1675.        Translation only occurs in Graphic mode 123T
  1676.                                                        >2<
  1677.  
  1678.      See table in @GON entry re: number translation.
  1679. @end
  1680.  
  1681. @nf USErline
  1682. @head centre,@USERLINE
  1683. $R$
  1684. @border
  1685.  
  1686.      The USERLINE is the last line of the screen.  You may define
  1687.      this line using the @USERLINE directive.  Remember that  the
  1688.      time  is also displayed on this line.
  1689.  
  1690.      Example
  1691. @draw
  1692.      >1<
  1693.        @use '^RPress ^Tany key^T to continue...^R'
  1694.                                                        >1<
  1695.      Displays as shown in line 24:
  1696. @use 'Press any key to continue...'
  1697. @end
  1698. @nf VIDeo
  1699. @head centre,@VIDEO
  1700. $R$
  1701. @border
  1702.  
  1703.      Denotes the start of screen template data.  Opens the  video
  1704.      definition  file ready for use.
  1705. @end
  1706.  
  1707. @nf WINdow
  1708. @col page,cyan,blue
  1709. @head centre,@WINDOW
  1710. $R$
  1711. @border
  1712.  
  1713.      The  @WINDOW directive allows you to create windows anywhere
  1714.      on  the screen without affecting the existing display.
  1715.  
  1716.      @WINdow LINEl,COLUMNc,DEPTHd,WIDTHw{{,PATTERN z}}
  1717.      l = the line number of the first line of the window,
  1718.      c = the column number of the first column of the window,
  1719.      d = the depth of the window expressed in lines,
  1720.      w = the  width  of the window, expressed in columns.
  1721.      z = is decimal value of filler char - try 176,177,178.
  1722.  
  1723.      (keywords line,column,depth,width and pattern may be omitted)
  1724.    Example
  1725. @draw
  1726.     =1=
  1727.       $C$
  1728.       @WIN LINE17,COLUMN55,DEPTH5,WIDTH23,PATTERN177
  1729.       @WIN LINE16,COLUMN53,DEPTH5,WIDTH23,PATTERN178
  1730.  
  1731.         Windows allow easy,
  1732.         accurate  placement
  1733.         of overlay text.   ^E
  1734.                                                    =1=
  1735. $C$
  1736. @WIN LINE17,COLUMN55,DEPTH5,WIDTH23,PATTERN177
  1737. @WIN LINE16,COLUMN53,DEPTH5,WIDTH23,PATTERN178
  1738.  
  1739.   Windows allow easy,
  1740.   accurate  placement
  1741.   of overlay text.   
  1742. @end
  1743. @nf markers
  1744. @acceptfk f1
  1745. @head centre,@markers
  1746. $R$
  1747. @border
  1748.  
  1749.      Markers  are otherwise known as feet and are used to mark or  de-limit 
  1750.      fields on the screen to make data entry easier.
  1751.  
  1752.      @markers none
  1753.      @markers xy
  1754.      where none disables markers (and indication of error)
  1755.            x    is the character to use at the start
  1756.            y    is the character to use at the end
  1757.  
  1758. @draw
  1759.      >1<
  1760.        @markers ><
  1761.        @str                               Note the use of '-' and its effect
  1762.         Your name please [[-         ]]   (to fill field with underscores)
  1763.                                      >1<  '.' may be used to fill with dots.
  1764.  
  1765.        Displays as:
  1766.  
  1767. @markers ><
  1768. @str
  1769.      >2<
  1770.        Your name please [-         ]
  1771.                                      >2<
  1772. $N$
  1773. @end
  1774. @eof
  1775.  
  1776. 
  1777.